%%%%%%%%%%%%%%%%%%%#%@*---:::::::::::::-:::::::::::::--:..........:--+**+++++++++++++++++===++==++==
##*%%%%%%%%%%%%%%%%#%@*----------------=----=========++-::--------==-+*++++++++++++++++++===++==+===
###%%@@%%%%%%%%%%%%#%@#=+++++++++++++++++++============--::::::::-*=-+*++++++++++++++=+++===++==++++
#####@@%%%%%%%%%%%%#@@*---:::::::::::::=-:::::---------:..... ..-+*==+*+++++++++++++==++====++==++=+
%###%@@%%%%%%%%%%%%#%@*----------------=-----==========:.. :. :::=*==+*+++++++++++++==+==+==++=+++++
%%%#%@@%%%%%%%%%%%%#@@*---========----=+=-------=======:   .  ::.=*=-+*+++++++++++++==+==++=++==++++
***+*@@@%%%%%%%%%%%#@@*----------------=------------===: .    -=+**=-+++++++++++=++==++==++++===++++
==--+@@%%%%%%%%%%@%#@@*----------------=------------===::....:==*#*=-+++++++++++=++==+==+++++==+++++
==--+@@%%%%%%%%%%@%#@@*----------------=------------===::..:-===***==++++++++++++++==+=++++++++++++*
==--+@%%%%%%%%%%%@%#@@*----------------=-------------==::..:====**+==++++++++++++++++++++++++++=++++
==--+@@%%%%%%%%%%@%#@@*----------------=--------------=::::-====+*+-=++++++++++++++++++++++++++===++
=---+@@%%%%%%%%%%@%%@@*---------------================+++++++++*****++**++++++++++++++++==+++++==+++
==--+@@%%%%%%%%%@@%%@%#***####################%%%%%%%%%%%%%%%%%%%%%%=****+*++*++++++++++===+++++++++
==--+@@%%%%%%%%%@@%%@%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%=******++*++*+++*+++===+*+++++++
----+@@%%%%%%%%%@@%#%@@@@@@@@@@%%%@%%%%###%%%%%%%%%%%%%%%%%%%%%%%%%%=******+***+++++*+++++++++++++++
=---+@@@%%%%%%%%@@%%@@%###########*========+****#################%%#=*****++++++++++*+++++++++++++++
=---+@@@%%%%%%%%@@%%@@#***######*=-=+=+==========++++**###%%%%%%%###-*****+++**+++++*+++++=+++++++++
+=--+@@@@@%%%%%%@@%%@@%%%%%%%%#+-==*#*-=+***++=++++++**+*+*#%@@@%##*-********+++++++*++++++++++++++*
-+--+@@@@@@%%%%%@@%%@@%#######*==+*%%++##%%###@@%##*+*##*#*****++**=-********+++++++++*+++++++++++**
++--+@@@@@@@%%@%@@%%@@%##*####*++##%%*##%%%%%%@@@%##*+*###%%##*=+*+--******+*+*+++++++++++++++++++**
*+--+@@@@@@@@@%@@@%%@@###*##**=++#%#%####%%%@%@@@@@%%%**##%%%%#*++=--***+**+*+*++++++++++++++++++++*
*+--*@@@@@@@@@@@@@%%@@%######=+*#######********#####%@@%##%%###%#+=--******++++++++++++++++++++++++*
*+=-*@@@@@@@@@@@@@%%@@%#####+=#%%##*+==-----====+++*##%%%%#%%%%%%#---****+++++++++++++++++++++++++++
#+--*@@@@@@@%@@@@@%%@@######+=**##+---------======++**##%%%%%%%%%%=:-****+++++++++++++=+++++++++++++
#+--*@@@@@@@@@@@@@%%@@#*###*==--++---:::---=======++****##%%%%%%%@*:=****++++++++++**+++++++++++*+++
=+--*@@@@@@@%%@@@@%%@@#*###*+==-=-:::::----====--=++****######%%%%*:=*****++++++++++*+++++++++++*+++
=+--*@@@@@@@@@@@@@%%@@#*####*++--::::::----===--==+****#######%%%%*:=*****+*+*+++++**++++++++++*++++
=+=-*@@@@@@@@@@@@@%%@@#######*=--::::::---==+++++**###########%@%@+:=***+++*+++++++*++++++++*+++++++
=+=-*@@@@@@@@@@@@@%%@@##*#####*==----==+**#**++**##%%%%%%%%####%@@*-=****+*++++++++*++++++++++++++++
=+--*@@@@@@@@@@@@@%%@@#########++--==*###%##+==+##%@%@@@@%%####@@%%%********+++++++*+++++++++++**+++
=+--*@@@@@@@@@@@@@%%@@#######%#**=--+#**@@%%+=-=*#%%%%%%%####**%%##%#***+++*+++++++*++++++++*+**++++
=+--*@@@@@@@@@@@@@%%@@######%*+=++--++==*##*=+--*###########**#%@%#%#****++*+++++++**+**++++****++++
=+--*@@@@@@@@@@@@@%%@@#######**-=+-:---===--==:-*#######****####%%#%*++++++++++++++*****++++****++++
=+--*@@@@@@@@@@@@@%%@@#######**-=+--:-------=-:-+#################%*=****+++*+++++*******+******++++
=+--*@@@@@@@@@@@@@%%@%########+-++--::-----=---=*###%#############%==***********++++++++++*******++*
=+--*@@@@@@@@@@@@@%%@@#########+----::---=+--++=*%@%%###########**=:+************+*******++++++++++*
=+--*@@@@@@@@@@@@@%%@@########%#=-------==---==+##%%%%%%%######*::::+*************************++++++
=+=-*@@@@@@@@@@@@@%%@@###########===----=-=+===*##%%%%%%%%####%*::::+#******************************
=+=-*@@@@@@@@@@@@@%%@@%##########===----=+*++=+**##%%%#####%##%=::::+#******************************
=+=-*@@@@@@@@@@@@@%%@@%##########-::++:--==-:--=+*#######%%%%%#-::::*#******************************
+==-*@@@@@@@@@@@@@%%@@%#######%##=--+%+--------=+**######%%%%%#----:*##**************#************+*
+==-*@@@@@@@@@@@@@%%@@%#######%##***#%%=---------+**####%%%%%##=:--:*#*#****************************
=+==*@@@@@@@@@@@@@%%@@%##########%%%%%%+:-==----=+*##%%%%%%%%###=:-:*#**************#***************
++==*@@@@@@@@@@@@@%%@@%##########%%%%%%*::-==+++*##%%%%@@%%%%##%@=::********************************
++==*@@@@@@@@@@@@@%%@@%########**%%%%#@*:----==+*#%%%%%%%%%%%##%@@+:*********************#**********
++==*@@@@@@@@@@@@@%%@@%#######%*+%%%##%*-::----=+*%%%%%%%%%%%%%@@@@#*#*+****************************
++==*@@@@@@@@@@@@@%%@@%##########%%%###%*=------=+*##%%%%%%%%%@@@@@@@@%#*+**********##**************
+*==*@@@@@@@@@@@@@%%@@%######%@@@%#*%##%%%*+===-==+*#####%%%%@@@@@@@@@@@%##*#*******##*************#
+*++*@@@@@@@@@@@@@%%@@%####%@@@@%%######%%%%##*+++*****##%%@@@@@@@@@@@@@@@@@@@%*********************
+*++*@@@@@@@@@%%%%%%%%%%%#@@@@@%%%%######%##%%###***+++##%@@@@@@@@@@@@@@@@@@@@@@%####**************#
+*=**@@@@@@@%##%%%%%@%@%%@@@@@%%%%%#####%%=#@#####***++*#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%#***********#
+*+**@@@@@%###%@%#%@@%%%@@@@@%%%%%###%=%@%#@@%#*#***+++*#@@@@@@@@%%@@@@@@@@@@@@@@@@@@@@@@@@%%%#*****
+*+=+@@@@####%%@%##%%#@@@@@@@%%%%%###%%%@%%@%%#**++=+**#@@@@@@@@@*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@#****
+*+=+@@@###%##@@%###%@@@@@@@%%%#%@##*%@%%%@@@%##*++#@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@%%@@@@@@@@@@@%***
+*+=+@%####%%#%@%#%%#@@@@@@@%%%#%@%#*#%%@#%@@@@%#*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%@@@@@@@@@@@@%**
+*==+@#####%@%#%@%%@#@@@@@@%%%%#%@%###%#%%#%@@@@%%@@@@@@@@@@@@@@@@@@%%%%@@@@@@@%@%%%@@@@@@@@@@@@@@@#
+*==+%######%@%%@%%@%@@@@@@%%%%%%@%#*=%%%%%#@%=*%@@@@@@@@@%@@@@%@@@%%%%%@@@@@@@%%%%@@@@@@@@@@@@@@@@@
++==+########@@%@@%@%@@@@@@%%%#%@@@%*-*%%%%%@@##@@@@@%@@@%@@@@%%@@%%%%%%%@@@@@@%%%%@@@@@@@@@@@@@@@@@
+===*#%####%#%@@@@@@%@@@@@%%%%#%@@%%#+*#%%%%@@@@@@@@@%@@#%@@@%%@@@%%@%%%%@@@@@@%%#@@@@@@@@@@@@@@@@@@
++=+##%%%#%%%%@@@@@@%@@%@@%#%%%%%%%%###*%%%%@@@@@@@@@%@%%@@@%%@@@%%@@%%%%%@@@@@@%#@@@@%@@@@@@@@@@@@@
++=*%##%%%%%%%@@@@@%%@@%%@##%%%%%@%%%***#@@@@@@%%@@@@@%%@@@%%%%@%%%@@%%%%%%@@@@@%%@@@@@@@@@@@@@@@@@@
++=*#%#%%%%%%@@@@@@%%@@#%%##%%%%%@%%@#***%@@@@@@@@@@@%#@@@%%#%%%%%%@@%%%%%%@@@@@%%@@@@@@@@@@@@@@@@@@
++=###%%%%%%%@@@@@@%@@@#%%#%%%%%%@%%@%**#%@@@@@@@@@@%#%@@%%%=*%%%%@@%##%%@@%@@@@%%@@@@@@@@@@@@@@@@@@
++=####%%@@@%@@@@@@%@@@####%%%%%%%%%%@####@@@@@@@@@@##@@@%%+-#%%%%%@%**%@@@%%@@@%@@@@@@@@@@@@@@@@@@@
+++#####%%%%%@@@@@@@@@@####%%%%%%%%%%@@%%#%@@@@@@@@@#%@@%%%**%%%%%%%%%@@@@@%%@@@@@@@%%@@@@@@@@@@@@@@
++*#####%##%%@@@@@@@@@%####%%%%%%%%%@@@@@%%@@@@@@@@%#%@%%###%%%%%%%@@@@@@@@@%%@@@@@@@@@@@@@@@@@@@@@@
++#%###%%%%%%@@@@@@@@@%####%%%%%%%%%@@@@@@%@@@@++%@%#%@%##*##%%%%%@@@@@@@@@@%%@@@@@@@%@@@@%@@@@@@@@@
++#####%%%##%@@@@@@@@@@####%%%%%%%%%@@@@@@@%#@@@%@@%#@%%#**#%%%%%@@@@@@@@@@@@%@@@@@@@@@@%%%@@@@@@@@@
+**######%%%%%@@@@@@@@@%###%%%%%%%%@@@@@@@@%=#@@@@@@#@%%#**#%%%%@@@@@@@@@@@@@@@@@@@@@%%@@@@@@@@@@@@@
+*#####%%%%%@@@@@@@@@@@@%##%%%%%%%%%@@@@@@@@#+%@@@@@#@@%%##%%%%@@@@@@@@@@@@@@@@@@@@%%%@@@%@@@@@@@@@@
**========++**#%%@@@@@@@%##%@%%%@@%%@@@@@@@@@%@@@@@@%@@%%%%%%%@@@@@@@@@@@@@@@@@@@%%%@@@@%%@@@@@@@@@@
*=::::::::----=++*##%@@@@@%%@@%@@@@%@@@@@@@@@@@@@@@@%@@@@@@%#%@@@@@@@@@@@@@@@@@@%%%%%%@@@@@@@@@@@@@@
*-::::::---====+**##%@##%@@%@@%@@@%%%@@@%@@@@@@@@@@@%@@@@@@%#%@@@@@@@@@@@@@@@@%%%%%%%%%@@@@@@@@@@@@@